/* 
 * File:   Salle.h
 * Author: poitevjo
 *
 * Created on 24 novembre 2011, 12:50
 */

#ifndef SALLE_H
#define	SALLE_H
#include <vector>
#include "Case.h"

//symboles par defaults
#define SymCroi '+'
#define SymMurHor '-'
#define SymMurVer '|'
#define SymVide '.'

class Salle {
private:
    int num;
    Case Casegen;
    int longueurx;
    int longueury;
    vector<Case> Cases;
  
public:
    //Constructeur de la classe//
    Salle(Case Casegen=Case(0,0,' ') ,int x=0,int y=0,int num=0);
    //////////////////////////Methodes d'affichages/////////////////////////////
    void Afficher();//Affiche la salle sans tenir compte des position x,y//
    void AfficherCases();//Affiche les infos de chacune des cases de la salle//
    ////////////////////////////////////////////////////////////////////////////
    void Saisir();//Methode de test de la classe//
    ////////////////////////////////////////////////////////////////////////////
    void AjouterCase(Case C);
    ////////////////////////////////////////////////////////////////////////////
    void Generer();//Genere les Case composant la salle selon longueurx,longueury et Casegen// 
    //////////////////////////Methodes Ascesseurs///////////////////////////////
    vector<Case>  getCases();//Retourne Cases//
    int getlongueurx();//retourne longueurx//
    int getlongueury();//retourne longueury//
    Case getCasegen();//retourne Casegen//
    ////////////////////////////////////////////////////////////////////////////
    bool EstIdentique(Salle S);//retourne vrai si la salle en parametre est identique//
    //void Enregistrer()
    //void Charger();
};

#endif	/* SALLE_H */

